Internet and other open connectivity environments create a strong demand for sharing the semantics of data. Ontology systems are becoming increasingly essential for nearly all computer applications. Organizations are looking towards them as vital machine-processable semantic resources for many application areas. An ontology is an agreed understanding (i.e. semantics) of a certain domain, axiomatized and represented formally as logical theory in the form of a computer-based resource. By sharing an ontology, autonomous and distributed applications can meaningfully communicate to exchange data and thus make transactions interoperate independently of their internal technologies.
Ontologies capture domain knowledge of a particular part of the real-world, e.g., knowledge about product delivery. Ontologies can be seen as a formal representation of the knowledge by a set of concepts and the relationships between those concepts within a domain. Ontologies must capture this knowledge independently of application requirements (e.g. customer product delivery application vs. deliverer product delivery application). Application-independence is the main disparity between an ontology and a classical data schema (e.g., EER, ORM, UML) although each captures knowledge at a conceptual level. For example, many researchers have confused ontologies with data schemes, knowledge bases, or even logic programs. Unlike a conceptual data schema or a “classical” knowledge base that captures semantics for a given enterprise application, the main and fundamental advantage of an ontology is that it captures domain knowledge highly independent of any particular application or task. A consensus on ontological content is the main requirement in ontology engineering, and this is what mainly distinguishes it from conceptual data modelling.
The main foundational challenge in ontology engineering is the trade-off between ontology usability and reusability. The more an ontology is independent of application perspectives, the less usable it will be. In contrast, the closer an ontology is to application perspectives, the less reusable it will be.
Certain prior art systems use XML schemas as so-called ontologies. However, XML schemas are not ontologies for the following reasons. They define a single representation syntax for a particular problem domain but not the semantics of domain elements. They define the sequence and hierarchical ordering of fields in a valid document instance, but do not specify the semantics of this ordering. For example, there is no explicit semantics of nesting elements. They do not aim at carving out re-usable, context-independent categories of things—e.g. whether a data element “student” refers to the human being or the role of being as student. Quite the opposite, one can often observe that XML schema definitions tangle very different categories in their element definitions, which hampers the reuse of respective XML data in new contexts.
Ontology systems are typically used for querying multiple information systems. The ontology system typically comprises a union of the elements within said information systems. Prior art systems, as described in US2006/101073 and WO2008/088721, typically describe a system and method for data integration whereby multiple XML source schemas are queried through a common XML target schema.
However, recent developments in open connectivity applications demand communication between two or more information systems. Any communication between two or more information systems occurs in some format serialized in a language such as XML. In order to align the different formats (e.g., the format of the sending party and the format expected by the receiving party), people responsible for the systems have to align as well, until they reach an agreement on what to send, and how exactly it will be represented. Currently, this problem is solved ad hoc by creating some case specific solution (e.g., an XSLT script). However, there is absolutely no extra value or means for reusability created by taking this approach.
Current solutions mostly consist of creating custom transformations between every format. Point to point approaches are fast but difficult to make, manage and maintain. Hub and spoke approaches are more efficient but more difficult to develop and maintain, and have problems with flexibility.
Typical prior art systems, such as EP 1 260 916, model entities and the binary relations between them. This is like speaking a two-word language. However, real world natural language consists of sentences, linking multiple words in a semantical relationship. It is inherent that sentences comprise more meaning.
In the paper “Towards Ontological Commitments with Ω-RIDL Markup Language” (D. Trog et al., Advances in Rule Interchange and Applications, Lecture Notes in Computer Science, pp. 92-106) a markup language (XML) representation of the Ω-RIDL language is described. The different constraints are presented in both controlled natural language and markup language. A representation of a conceptual path is shown. It is to be noted that a conceptual path provides the basis to compose a conceptual query. However, the paper remains silent on how such a query can be composed or executed. The paper does not discuss performing data format translations. Only conceptual querying is discussed, which involves reading. Updates, which involve both reading and writing operations to perform a translation, are not discussed.
In “Ontology Engineering—the DOGMA approach” (M. Jarrar et al, Advances in Web Semantics I, vol. 4891, 2009-01-01, pp. 7-34) the authors describe the DOGMA ontology approach compared with other approaches. The paper is about the motivation behind splitting the Ontology Base (also Lexon Base) and axiomatizations (also commitments), what they dub the Double Articulation Principle. The constructs are formalized in first order logic, with discussion about description logics. Only a search/retrieval scenario is given as an example without actually explaining how it would work. Again this is limited to conceptual querying.
Patent application EP1327941 A2 describes a method for transforming data from one data schema to another by mapping the schemas into an ontology model, and deriving a transformation. The result of the method is a unidirectional transformation script, such as XSLT, which is processed by a pre-existing transformation engine. The patent application describes a frame-based approach (i.e. classes having properties), where data schema elements are mapped on properties of classes.
Hence, there is a need for more natural language and re-usability in ontology engineering and more specifically in the communication between information data systems.